!Guided Fault Isolation Program Listings - from Application Information B0138
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        
PROGRAM 3  !KEY ENABLE 12 BYTES     !Enable key interrupt

!Inputs:         none
!Called by:      programs 4, 21, 22, 24
!Calls to:       none
!Output:        Reg B = 40; toggles the enabling of asynchronous keyboard interrupt

   REGB = 40       !Initialize reg B
   DPY-+%B         !Enable key interrupt to reg B

PROGRAM 4  !KEY WAIT 18 BYTES  !Wait for key interrupt

!Inputs:         none
!Called by:      program 22
!Calls to:       program 3
!Outputs:        Register B = the value of a key preseesed (0-3F)

   EXECUTE PROGRAM 3  !Enable interrupt

1: LABEL 1
   IF REGB = 40 GOTO 1 !Loop untill key pressed (40)

PROGRAM 9 !DELAY 28 BYTES !Delay loop (variable time)

!Inputs:      Register F = delay loop parameter
!Called by:    programs 21, 22
!Calls to:     none
!Output:       delay time to delay program execution for displays

   REG1 = REGF     !Save delay parameter
0: LABEL 0         !Loop reg 1 times
   IF REG1 = 0 GOTO 1 !Exit if end of loop
   DEC REG1
   GOTO 0
1: LABEL 1         !End loop

PROGRAM 20 !SUPERVISOR 26 BYTES     !Main Guided Fault Isolation program

!Inputs:         Reg B = any key pressed during Controller program when not looping and not stopped.
!Called by:      any main test program upon detecting failure
!Calls to:       program 21
!Output:         Registers C, 8, and 9 as given by program 22
        DPU-GFI SUPERVISOR PROGRAM    !Enter your GFI programs here
!!!!!!!!!!!!!!!!!!!!!end of SUPERVISOR!!!!!!!!!!!!!!!!!!!!!!!!!  
